from app import ma
from .models import Comment

# 评论序列化 Schema（核心：用字符串引用 UserProfileSchema）
class CommentSchema(ma.SQLAlchemyAutoSchema):
    class Meta:
        model = Comment
        load_instance = True
        # 让Marshmallow自动发现所有字段，避免版本兼容性问题
    
    # 【关键修复】用字符串引用 UserProfileSchema，避免直接导入
    user = ma.Nested('app.users.schemas.UserProfileSchema', many=False)

# 实例化序列化器
comment_schema = CommentSchema()       # 单条评论
comments_schema = CommentSchema(many=True)  # 多条评论